<?php

/**
 * 正则验证手机号 正确返回 true
 * @param $mobile
 * @return bool
 */
function pregMobile($mobile) {
    if(preg_match("/^1[34578]\d{9}$/", $mobile)) {
        return TRUE;
    } else {
        return FALSE;
    }
}

/**
 * 验证电话号码
 * @param $tel
 * @return bool
 */
function pregTel($tel) {
    if(preg_match("/^(\(\d{3,4}\)|\d{3,4}-)?\d{7,8}$/", $tel)) {
        return TRUE;
    } else {
        return FALSE;
    }
}


/**
 * 验证身份证
 * @param $idcard
 * @return bool
 */
function pregIdcard($idcard) {
    if(preg_match("/^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/", $idcard)) {
        return TRUE;
    } else {
        return FALSE;
    }
}

/**
 * 验证是否是数字(这里小数点会认为是字符)
 * @param $digit
 * @return bool
 */
function pregDigit($digit) {
    if(preg_match("/^\d*$/", $digit)) {
        return TRUE;
    } else {
        return FALSE;
    }
}

/**
 * 验证是否是数字(可带小数点的数字)
 * @param $num
 * @return bool
 */
function pregNum($num) {
    if(is_numeric($num)) {
        return TRUE;
    } else {
        return FALSE;
    }
}

/**
 * 验证由数字、26个英文字母或者下划线组成的字符串
 * @param $str
 * @return bool
 */
function pregStr($str) {
    if(preg_match("/^\w+$/", $str)) {
        return TRUE;
    } else {
        return FALSE;
    }
}

/**
 * 验证用户密码(以字母开头，长度在6-18之间，只能包含字符、数字和下划线)
 * @param $str
 * @return bool
 */
function pregPassword($str) {
    if(preg_match("/^[a-zA-Z]\w{5,17}$/", $str)) {
        return TRUE;
    } else {
        return FALSE;
    }
}

/**
 * 验证汉字
 * @param $str
 * @return bool
 */
function pregChinese($str) {
    if(preg_match("/^[\u4e00-\u9fa5],{0,}$/", $str)) {
        return TRUE;
    } else {
        return FALSE;
    }
}

/**
 * 验证Email地址
 * @param $email
 * @return bool
 */
function pregEmail($email) {
    if(preg_match("/^\w+[-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/", $email)) {
        return TRUE;
    } else {
        return FALSE;
    }
}

/**
 * 验证网址URL
 * @param $url
 * @return bool
 */
function pregLink($url) {
    if(preg_match("/http:\/\/[\w.]+[\w\/]*[\w.]*\??[\w=&\+\%]*/is", $url)) {
        return TRUE;
    } else {
        return FALSE;
    }
}

/**
 * 腾讯QQ号
 * @param $qq
 * @return bool
 */
function pregQq($qq) {
    if(preg_match("/^[1-9][0-9]{4,}$/", $qq)) {
        return TRUE;
    } else {
        return FALSE;
    }
}

/**
 * 验证中国邮政编码 6位数字
 * @param $post
 * @return bool
 */
function pregPost($post) {
    if(preg_match("/^[1-9]\d{5}(?!\d)$/", $post)) {
        return TRUE;
    } else {
        return FALSE;
    }
}

/**
 * 验证IP地址
 * @param $ip
 * @return bool
 */
function pregIp($ip) {
    if(preg_match("/^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$/", $ip)) {
        return TRUE;
    } else {
        return FALSE;
    }
}